TOP

SQL 조인

SQL JOIN

JOIN 표현식은 둘 이상의 테이블 사이의 관련 열을 기반으로 두 개 이상의 테이블에서 행을 조인하는 데 사용됩니다.


"Orders"("주문") 테이블의 샘플을 살펴보겠습니다.

ProductIDOrderIDCustomerIDEmployeeIDOrderDateShipperID
1102489051996-07-043
2102498161996-07-051
3102503441996-07-082

그런 다음 "Customers"("고객") 테이블의 샘플을 살펴보세요.

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico

"Orders" 테이블의 "CustomerID" 열은 "Customers" 테이블의 "CustomerID"을 참조합니다. 위 두 테이블의 관계는 "CustomerID" 컬럼입니다.

그런 다음 두 테이블 모두에서 일치하는 값이 있는 레코드를 선택하는 다음 SQL 문(INNER JOIN 포함)을 생성할 수 있습니다.

Run SQLSELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID

그러면 다음과 같은 결과가 생성됩니다.

OrderIDCustomerNameOrderDate
10308Ana Trujillo Emparedados y helados1996-09-18
10365Antonio Moreno Taquería1996-11-27
10355Around the Horn1996-11-15
10383Around the Horn1996-12-16
10289B's Beverages1996-08-26

다양한 유형의 SQL JOIN

다음은 SQL의 다양한 유형의 JOIN입니다.

  • (INNER) JOIN: 두 테이블 모두에서 일치하는 값이 있는 레코드를 반환합니다.
  • LEFT (OUTER) JOIN: 왼쪽 테이블의 모든 레코드와 오른쪽 테이블의 해당 레코드를 반환합니다.
  • RIGHT (OUTER) JOIN: 오른쪽 테이블의 모든 레코드를 반환하고 왼쪽 테이블의 일치하는 레코드를 반환합니다.
  • FULL (OUTER) JOIN: 왼쪽 또는 오른쪽 테이블에 일치하는 항목이 있는 경우 모든 레코드를 반환합니다.


  • SQL INNER JOIN SQL LEFT JOIN SQL RIGHT JOIN SQL FULL OUTER JOIN